#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main()
{
    //【创建僵尸进程】
    //僵尸进程：当进程退出并且父进程没有读取到子进程退出的返回代码时就会产生僵死进程。
    //僵死进程会以终止状态保持在进程表中，并且会一直在等待父进程读取退出状态代码。
    //只要子进程退出，父进程还在运行，但父进程没有读取子进程状态，子进程进入Z状态。
    pid_t id=fork();
    if(id==0)
    {
        int cnt=5;
        while(cnt)
        {
            printf("I am child,pid:%d,ppid:%d\n",getpid(),getppid());
            cnt--;
            sleep(1);
        }
    }
    else
    {
        while(1)
        {
            printf("I am parent,pid:%d,ppid:%d\n",getpid(),getppid());
            sleep(1);
        }

    }
    return 0;
}
